Skip to main content

DNS et Récursion

Le service de résolution DNS permet d’associer un nom facile à lire et à écrire par un humain a une valeur, généralement une adresse IP (type A).

Output

Lorsque nous indiquons à notre navigateur que nous voulons aller sur "www.google.com", notre demande de connexion est envoyée à DNS, DNS informe notre navigateur que l'adresse IP de Google est "8.8.8.8.8" et notre navigateur établit une connexion à cette adresse IP en arrière-plan.

Deux types de serveurs DNS sont impliqués dans ce processus :

  • Les serveurs autoritaire, qui conntiennent toutes les entrées DNS associées à une liste de zone qu’ils gèrent.
  • Les serveurs récursif qui permette de résoudre les DNS et s’occupent d’aller contacter les serveurs DNS autoritaire nécessaires.

Serveur DNS Racine

Output Organisé de manière hiérarchique depuis les serveurs racines vers les serveurs les plus précis, chacun d’entre eux est désigné par un serveur de plus haut niveau. On peut distinguer 3 catégories :

  • Les serveurs racines au nombre de 13 sous gouvernance US qui sont le point de départ
  • Les TLD’s et nTLD’s : .fr , .com .org .io .cloud .it
  • Les domaines de deuxième niveau : oclock.io, free.fr, eddi.cloud.

Les entrées DNS

Ils peuvent être de plusieurs type :

  • A (Host) pour associer un nom à une IP
  • CNAME(Canonical Name) pour associer un nom à un autre nom, on appelle ça un alias
  • AAAA(Address Record) pour associer un nom à une IPv6
  • TXT pour associer un nom à un texte (ça parait inutile comme ça mais c’est très pratique et utilisé). Certains s’en servent un peu comme une base de donnée NoSQL.
  • NS(Name Server) pour associer les serveurs DNS à une zone
  • PTR (Pointer Record) pour faire l’inverse du A et associer une ip à un nom
  • MX(Mail Exchanger) pour indiquer où envoyer les mails d’un domaine.

Utilisation de la commande "dig"

La commande dig est un outil utilisé pour effectuer des requêtes dans le système Domain Name System (DNS). Cette commande est utilisée pour interroger des informations spécifiques sur un enregistrement DNS ou pour tester des serveurs DNS.

Utilisation de base:

dig example.com

La commande ci-dessus interroge le DNS pour le domaine "example.com" et affiche les informations pertinentes.

Interrogation pour un type d'enregistrement spécifique:

Pour interroger un type d'enregistrement DNS spécifique, utilisez le paramètre -t. Par exemple, pour interroger l'enregistrement A(IPv4) :

dig -t A example.com
dig -t AAAA example.com
dig -t MX example.com
dig -t CNAME example.com
dig -t TXT example.com
dig -t SOA example.com
dig -t NS example.com

Interrogation d'un serveur DNS spécifique:

Vous pouvez effectuer une requête vers un serveur DNS spécifique en utilisant le symbole @. Par exemple :

dig example.com @8.8.8.8

Cette commande interroge le serveur DNS public de Google pour le domaine "example.com".

Interrogation DNS inversée:

Vous pouvez effectuer une requête DNS inversée pour trouver le nom de domaine associé à une adresse IP. Par exemple :

dig -x 8.8.8.8

Cette commande affiche le nom de domaine associé à l'adresse IP "8.8.8.8".